package br.com.hsp.system.filters;

import java.io.IOException;


import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

//@WebFilter(servletNames={"Faces Servlet"})
public class ControleDeAcesso implements Filter{
	
	@Override
	public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
		String url;
		HttpServletRequest req = (HttpServletRequest) request;
		HttpSession session = req.getSession();
		url = req.getRequestURL().toString();
		//System.out.println(url);
		if(session.getAttribute("usuarioCPF") != null) {
			/*if (url.contains("paciente") || url.contains("index")||url.contains("acesso")){
				/*if(session.getAttribute("usuarioTipo").toString().equals("Paciente"))  {
					chain.doFilter(request, response);
				} else {
					System.out.println("Acesso Negado");
					HttpServletResponse res = (HttpServletResponse) response;
					res.sendRedirect("/HSPtesteF2/acessonegado.xhtml");
				}
				chain.doFilter(request, response);
				
			} else {
				System.out.println("Acesso Negado");
				HttpServletResponse res = (HttpServletResponse) response;
				res.sendRedirect("/HSPtesteF2/acessonegado.xhtml");
			} */
			chain.doFilter(request, response);
		} else if (req.getRequestURI().endsWith("login.xhtml")){
			chain.doFilter(request, response);
		} else {
			System.out.println("redirect");
			HttpServletResponse res = (HttpServletResponse) response;
			res.sendRedirect("/HSPtesteF2/login.xhtml");
		}
		
	}
	
	@Override
	public void init(FilterConfig filterConfig) throws ServletException {
		
	}
	
	@Override
	public void destroy() {
		
	}
	
}
